The invention relates, in general, to data communications and data communications systems and devices and, more specifically, to an apparatus and method for adaptively providing a degree of forward error correction that is optimized to achieve desired performance metrics in a data communications system.
The transmission of information in digital form continues to grow at an exponential rate. Analog information including text, video, audio, and multimedia is digitized for transmission over a wireless or wire-based communications network. Generally, with the exception of baseband communications schemes, the digital information is modulated over a radio frequency carrier for efficient transmission over the communications medium. The information can be carried over the communications link continuously or in packets, and further can be time or frequency multiplexed to provide more efficient use of the channel for multi-user access.
One such specific communications system employing digitally encoded video, voice and other forms of data, is the CableComm(trademark) System currently deployed by Motorola, Inc. of Schaumburg, Ill. In the CableComm(trademark) System, a hybrid optical fiber and coaxial cable is utilized to provide substantial bandwidth over existing cable television lines to receiving stations, such as individual subscriber access units located at, for example, households having cable television capability. The coaxial cables are further connected to fiber optical cables terminating at a central location (referred to as the xe2x80x9chead endxe2x80x9d) where controlling, receiving and transmitting equipment resides. The head end equipment may be connected to any variety of network or other information sources, such as the Internet, online services, telephone networks, video/movie subscriber services, and over-the-air program signals. With the CableComm(trademark) System, digital data can be transmitted both in the downstream direction, from the head end to an individual or multiple users, or in the upstream direction, from the user to the head end.
In one embodiment of the CableComm(trademark) System, downstream data is transmitted using 64 quadrature amplitude modulation (xe2x80x9cQAMxe2x80x9d) at a rate of 30 Mbps (megabits per second), over channels having 6 MHz bandwidth in the frequency spectrum of 88-860 MHz. Anticipating asymmetrical requirements with a significantly greater quantity of data tending to be transmitted in the downstream direction than the upstream direction, less capacity is provided for upstream data transmission. The upstream channel utilizes xcfx80/4 differential quadrature phase shift keying (xcfx80/4-DQPSK) modulation in the frequency band from 5-42 MHz with a symbol rate of 384 k symbols/sec with 2 bits/symbol. The communications system is designed to have a multipoint configuration, i.e., many end users transmitting upstream to the head end, with one or more head end stations transmitting downstream to the end users.
The communications system is designed for asynchronous transmission, with users independently transmitting and receiving packets of encoded data, such as video or text files. Transmission in this application is generally bursty, with users receiving or transmitting data at indeterminate intervals over selected channels in response to polling, contention, or other protocols established at the head end, rather than transmitting more or less continuously with synchronous streams of information over a dedicated or circuit switched connection.
For asynchronous data transmission, it is desirable to organize the data into recognizable frames or packets for reliable detection by the receiver. In the CableComm(trademark) System, the data packet preamble contains timing and synchronization information to ensure accurate data reception and decoding. The timing information is followed by the source or application information, which may be encoded for both security (encryption) and for error detection and correction. Following the information or application data is the error correction checksum information (appearing as encoded bits) which allows both error detection and error correction at the receiving terminal.
Impairments in the transmission channel and failures within the communication devices inevitably produce noise conditions errors in one or more bits, (which are especially troublesome when they occur in the information portion of the transmitted word) leading to decoding errors. It is therefore desirable to detect and if possible correct such errors during the decoding process at the receiving end. The basic premise of error detection and correction (referred to as forward error correction or FEC) is to transmit additional bits, referred to as check bits (or check bytes, check sum bits or forward error correcting bits), in addition to the information. Forward error correction requires that more bits than are necessary to simply transmit the information be appended to the transmitted word so that the error detection and correction processes can be carried out at the receiving end.
One difficulty arising from the inclusion of error correction information is the attendant increase in overall word or packet size, adding overhead for data transmission and correspondingly decreasing data throughput. Also, the inclusion of error correction information typically increases the system response time or latency, due to the extra time consumed by the error detecting and correcting process when decoding the check sum word. To constrain the extra overhead, at least to a degree, the number of data errors that can be corrected, referred to as the forward error correcting power, is selected to meet the required performance demands of the communications system. However, the amount of overhead incurred by the system is directly proportional to the selected forward error correcting power. There may be some situations, such as low noise conditions, in which the forward error correcting power is xe2x80x9cexcessivexe2x80x9d, and therefore a higher data throughput can be achieved by reducing the forward error correction power. But, when insufficient correcting power is applied, the overall throughput performance of the system will suffer due to errors in the transmitted data that the correction scheme cannot correct, necessitating the retransmission of the uncorrectable words. Ideally, the correcting power applied should be matched to the impairment level of the communications channel, as the channel conditions change with time.
Various prior art methods are known for providing error correction capability. However, typically these methods utilize only a fixed error correction capability, without regard to the specific noise conditions of the channel and the possible opportunities to increase data throughput and decrease response latency when lower noise conditions are present.
Since the impairment or noise levels on a channel may vary with time, an adaptable and flexible error correction capability is required for providing sufficient error correction for accurate data reception while simultaneously minimizing overhead for increased data throughput. U.S. Pat. No. 5,699,365, assigned to the assignee of the present invention, provides a limited degree of adaptable and flexible error correction capability. The apparatus and method disclosed in the patent monitors a parameter of the communications channel and then compares the actual parametric value with a threshold level. If the monitored parameter is not within a threshold value, an additional degree of forward error correction is added to the transmitted bit stream. Disadvantageously, this prior art mechanism lacks the ability to quantitatively determine the optimal forward error correction power to be applied at a given time over a given communications channel and therefore the amount of error correction power to be added. Further, it does not specify an algorithm using statistical metrics provided by common forward error correcting (FEC) commercial off-the-shelf integrated circuits, and how the metrics should be manipulated to adaptively revise FEC process parameters. The present invention provides a mechanism for calculating such a metric based upon commonly available FEC chips and specifies an algorithm for updating such forward error correction parameters as a result of this calculation.